/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.seguradora.service;

import br.com.seguradora.model.repository.impl.RepositoryFactoryImpl;
import br.com.seguradora.model.repository.RepositoryFactory;
import br.com.seguradora.exception.PersistenciaException;
import br.com.seguradora.model.Marca;
import br.com.seguradora.model.Modelo;
import br.com.seguradora.model.repository.TodosModelos;
import br.com.seguradora.view.DisplayFilter;
import java.util.List;

/**
 *
 * @author Diego
 */
public class ModeloService {

    private TodosModelos todosModelos;

    public ModeloService() {
        RepositoryFactory repositoryFactory = new RepositoryFactoryImpl();
        todosModelos = repositoryFactory.createModeloRepository();
    }

    public boolean inserir(Modelo modelo) throws PersistenciaException {
        return todosModelos.inserir(modelo);
    }

    public boolean atualizar(Modelo modelo) throws PersistenciaException {
        return todosModelos.atualizar(modelo);
    }

    public boolean excluir(Modelo modelo) throws PersistenciaException {
        return todosModelos.excluir(modelo);
    }

    public List<Modelo> listarTodos(int... limits) throws PersistenciaException {
        return todosModelos.listarTodos(limits);
    }

    public List<Modelo> listarPelaMarca(Marca marca, String nome, DisplayFilter displayFilter) throws PersistenciaException {
        return todosModelos.listarPelaMarca(marca, nome, displayFilter);
    }
    
    public List<Modelo> listarPeloNome(String nome, DisplayFilter displayFilter) throws PersistenciaException {
        return todosModelos.listarPeloNome(nome, displayFilter);
    }
}
